﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using FONCREAGROINTEGRAL.Models;
namespace FONCREAGROINTEGRAL.Controllers
{
    public class liquidacionPersonalController : Controller
    {
        //
        // GET: /liquidacionPersonal/
        public SistIntFoncreagroEntities entidades = new SistIntFoncreagroEntities();
        public ActionResult Index()
        {
            var query2 = entidades.EJERCICIOs.Single(cc => cc.EstadoP == true);
            var query3 = entidades.EJERCICIOMES.Single(em => em.vigente == true);
           var query = entidades.RHLiquidacionCabeceraByEjercicioMEs_Result(query3.IdEjercicio, query3.mes).ToList();
           // var query = entidades.RHLiquidacionCabeceraByEjercicioMEs_Result(6, 10).ToList();
                   var result = (from p in query.ToList()
                          select new
                          {
                              IdPeriodoLaboral = p.IdPeriodolaboral,
                              Personal = p.Personal,
                              IdEjercicioMes = p.IdEjercicioMes,
                              RecordVacaciones = p.RecordVacaciones,
                              VacacionesGozadas = p.VacacionesGozadas,
                              VacacionesGozadasActual = p.VacacionesGozadasActual,
                              VacacionesTruncas = p.VacacionesTruncas,
                              MesesGratifTrunca = p.MesesGratifTrunca,
                              MesesCTS = p.MesesCTS,
                              DiasCTS = p.DiasCTS,
                              UltimaGratificacion = p.UltimaGratificacion,
                              Fondo = p.Fondo,
                              Comision = p.Comision,
                              Prima = p.Prima,
                            }).ToList();
           return Json(new { grid = result, total = query.Count() }, JsonRequestBehavior.AllowGet);
        }

        public ActionResult IndexFiltros() {
            int IdEjercio = Int32.Parse(Request.QueryString["IdEjercio"]);
            int IdEjecicioMes = Int32.Parse(Request.QueryString["IdEjecicioMes"]);
            var Ejerciciomes = entidades.EJERCICIOMES.Single(em => em.idejerciciomes == IdEjecicioMes);
            var query = entidades.RHLiquidacionCabeceraByEjercicioMEs_Result(IdEjercio, Ejerciciomes.mes).ToList();
            // var query = entidades.RHLiquidacionCabeceraByEjercicioMEs_Result(6, 10).ToList();
            var result = (from p in query.ToList()
                          select new
                          {
                              IdPeriodoLaboral = p.IdPeriodolaboral,
                              Personal = p.Personal,
                              IdEjercicioMes = p.IdEjercicioMes,
                              RecordVacaciones = p.RecordVacaciones,
                              VacacionesGozadas = p.VacacionesGozadas,
                              VacacionesGozadasActual = p.VacacionesGozadasActual,
                              VacacionesTruncas = p.VacacionesTruncas,
                              MesesGratifTrunca = p.MesesGratifTrunca,
                              MesesCTS = p.MesesCTS,
                              DiasCTS = p.DiasCTS,
                              UltimaGratificacion = p.UltimaGratificacion,
                              Fondo = p.Fondo,
                              Comision = p.Comision,
                              Prima = p.Prima,
                          }).ToList();
            return Json(new { grid = result, total = query.Count() }, JsonRequestBehavior.AllowGet);
        }

    }
}
